package appapi.service;

import appapi.Request.InspectionPageReq;
import appapi.Request.MonthinspectionPageReq;
import appapi.Request.record.MonthRecPageReq;
import appapi.Vo.record.AddMonthRecVo;
import appapi.Vo.record.EditMonthRecVo;
import appapi.Vo.record.InspectWarnVo;
import appapi.Vo.record.MonthInspWarnVo;
import appapi.dto.MonthRecModel;
import appapi.dto.bridge.MonthExportDto;
import appapi.entity.basic.UserInfo;
import appapi.entity.record.MonthInspectionEntity;
import appapi.entity.record.MonthInspectionModel;
import com.github.pagehelper.PageInfo;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

/**
 * 请求对象
 *
 * @author luocheng
 * @version 1.0
 * @date 2023/06/01 11:45
 */
public interface MonthinspectionService{
    List<Map<String, Object>> SelectListByPage(InspectionPageReq req);

    List<Map<String, Object>> SelectList(Long equipId);

    PageInfo<MonthRecModel> page(MonthRecPageReq req);

    List<MonthRecModel> getList(MonthRecPageReq req);

    List<MonthExportDto> getLists(MonthRecPageReq req);

    int InsertInfo(AddMonthRecVo dto);

    int UpdateInfo(EditMonthRecVo dto);

    int DeleteInfo(List<Long> monthIds);

    List<Map<String, Object>> SelectMonthInspectionDetail(Long monthId);

    MonthInspectionModel getDetail(Long monthId);

    MonthInspWarnVo GetWarn(UserInfo userInfo);

    //更新所有设备的月检预警告警状态
    void AnaluEquipMonthAlarm();
}
